home *** CD-ROM | disk | FTP | other *** search
/ FishMarket 1.0 / FishMarket v1.0.iso / fishies / 476-500 / disk_499 / diglib / diglib.lzh / source / SYMBOL.for < prev    next >
Text File  |  1991-04-13  |  1KB  |  38 lines

  1.         SUBROUTINE SYMBOL(ISYMNO,SYMSIZ)
  2.     IMPLICIT NONE
  3.     INTEGER ISYMNO
  4.     REAL*4 SYMSIZ
  5. C
  6. C       THIS SUBROUTINE PLACES THE DESIRED SYMBOL ("ISYMNO") AT THE
  7. C       CURRENT LOCATION WITH A SIZE OF "SYMSIZ".
  8. C
  9.         INCLUDE DIGLIB$KOM:GCVPOS.PRM
  10.         REAL*4 SYMMOV(38)
  11.     INTEGER ISYMST(5),NSYM,IPTR
  12.     REAL*4 X0,Y0
  13.         DATA SYMMOV /
  14.      1   0.0,0.666667,  -0.5,-0.333333,  0.5,-0.333333,  0.0,0.666667,
  15.      2   -0.5,0.5,  -0.5,-0.5,  0.5,-0.5,  0.5,0.5,  -0.5,0.5,
  16.      3   0.0,0.5,  -0.4,0.0,  0.0,-0.5,  0.4,0.0,  0.0,0.5,
  17.      4   -0.4,0.5,  0.4,0.5,  -0.4,-0.5,  0.4,-0.5,  -0.4,0.5/
  18.         DATA ISYMST /1,9,19,29,39/
  19.         DATA NSYM /4/
  20. C
  21. C       SAVE CURRENT LOCATION
  22. C
  23.         X0 = XVPOS
  24.         Y0 = YVPOS
  25. C
  26. C       DRAW SYMBOL IN PROPER SIZE
  27. C
  28.         IF (ISYMNO .LE. 0 .OR. ISYMNO .GT. NSYM) RETURN
  29.         IPTR = ISYMST(ISYMNO)
  30.         CALL GSMOVE(X0+SYMSIZ*SYMMOV(IPTR),Y0+SYMSIZ*SYMMOV(IPTR+1))
  31. 100     IPTR = IPTR + 2
  32.         IF (IPTR .EQ. ISYMST(ISYMNO+1)) GO TO 200
  33.         CALL GSDRAW(X0+SYMSIZ*SYMMOV(IPTR),Y0+SYMSIZ*SYMMOV(IPTR+1))
  34.         GO TO 100
  35. 200     CALL GSMOVE(X0,Y0)
  36.         RETURN
  37.         END
  38.